using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
using System.Collections.ObjectModel;
using System.Xml.Serialization;
using EnvDTE;
using Microsoft.VisualStudio.Shell.Interop;
using System.Diagnostics;

namespace WebAppUploader
{
	public class ZipFilePart : INotifyPropertyChanged
	{
		public event PropertyChangedEventHandler PropertyChanged;

		#region Property PartID
		private int _PartID = 0;
		public int PartID
		{
			get
			{
				return _PartID;
			}
			set
			{
				_PartID = value;
				if (PropertyChanged != null)
					PropertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs("PartID"));
			}
		}

		#endregion

		#region Property FileSize
		private long _FileSize = 0;
		public long FileSize
		{
			get
			{
				return _FileSize;
			}
			set
			{
				_FileSize = value;
				if (PropertyChanged != null)
					PropertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs("FileSize"));
			}
		}

		#endregion

		#region Property Progress
		private int _Progress = 0;
		public int Progress
		{
			get
			{
				return _Progress;
			}
			set
			{
				_Progress = value;
				if (PropertyChanged != null)
					PropertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs("Progress"));
			}
		}

		#endregion

		#region Property FilePath
		private string _FilePath = "";
		[System.ComponentModel.Bindable(true)]
		[System.ComponentModel.DefaultValue("")]
		[System.ComponentModel.Category("Category")]
		public string FilePath
		{
			get
			{
				return _FilePath;
			}
			set
			{
				_FilePath = value;
				if (PropertyChanged != null)
					PropertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs("FilePath"));
			}
		}

		#endregion

		#region Property Error
		private string _Error = "";
		[System.ComponentModel.Bindable(true)]
		[System.ComponentModel.DefaultValue("")]
		[System.ComponentModel.Category("Category")]
		public string Error
		{
			get
			{
				return _Error;
			}
			set
			{
				_Error = value;
				if (PropertyChanged != null)
					PropertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs("Error"));
			}
		}

		#endregion

		#region Property Host
		private string _Host = "";
		[System.ComponentModel.Bindable(true)]
		[System.ComponentModel.DefaultValue("")]
		[System.ComponentModel.Category("Category")]
		public string Host
		{
			get
			{
				return _Host;
			}
			set
			{
				_Host = value;
				if (PropertyChanged != null)
					PropertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs("Host"));
			}
		}

		#endregion
	

		public ZipFilePart()
		{
		}


	}
}
